body {
    background: white;
    color: black;
    font-size: small;
    font-family: sans-serif;
    padding: 0 0.5em;
}
.metadata th {
    text-align: left;
    padding-right: 1em;
}
a.name, span.name {
    font-style: italic;
}
a, a:link, a:visited {
    color: #c30;
}
a img {
    border: 1px solid #c30 !important;
}
a:hover, a:active {
    text-decoration: underline;
    color: black;
}
a:hover {
    text-decoration: underline !important;
}
.shortcuts {
    margin: 1em 0;
    font-size: 0.9em;
}
.shortcuts a {
    display: inline-block;
    text-decoration: none;
    white-space: nowrap;
    color: black;
}
.shortcuts a::first-letter {
    font-weight: bold;
    letter-spacing: 0.1em;
}
.normal-first-letter::first-letter {
    font-weight: normal !important;
    letter-spacing: 0 !important;
}
.keywords {
    border: 1px solid #ccc;
    border-collapse: collapse;
    empty-cells: show;
    margin: 0.3em 0;
    width: 100%;
}
.keywords th, .keywords td {
    border: 1px solid #ccc;
    padding: 0.2em;
    vertical-align: top;
}
.keywords th {
    background: #ddd;
    color: black;
}
.kw, .args, .tags {
    min-width: 100px;
    max-width: 20%;
}
td.kw a {
    color: inherit;
    text-decoration: none;
    font-weight: bold;
}
.args span {
    font-style: italic;
    padding: 0 0.1em;
}
.tags a {
    color: inherit;
    text-decoration: none;
    padding: 0 0.1em;
}
.footer {
    font-size: 0.9em;
}
/* Docs originating from HTML and reST are wrapped to divs. */
.doc div > *:first-child {
    margin-top: 0;
}
.doc div > *:last-child {    /* Does not work with IE8. */
    margin-bottom: 0;
}
#search, #open-search {
    position: fixed;
    bottom: 5px;
    right: 5px;
    z-index: 1000;
}
#search {
    width: 30em;
    display: none;
}
#open-search {
    border: 2px solid #ccc;
    border-radius: 4px;
    width: 40px;
    height: 40px;
    background-color: white;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url();
    background-image: url(), none;
    background-size: 24px 24px;
}
#open-search:hover {
    background-color: #ccc;
}
fieldset {
    background: white;
    border: 2px solid #ccc;
    border-radius: 4px;
    padding: 6px 8px;
}
fieldset fieldset {
    border: 1px solid #ccc;
    margin: 4px 0;
}
#search-title {
    font-size: 1.1em;
    font-weight: bold;
    letter-spacing: 1px;
}
#search-string {
    box-sizing: border-box;
    width: 100%;
}
#hide-unmatched {
    margin: 0.5em 0 0 1em;
}
#search-buttons {
    float: right;
}
.highlight {
    background: yellow;
}
.no-match {
    color: gray !important;
}
tr.no-match.hide-unmatched {
    display: none;
}
